home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / edit / aurora2.zip / KEYCODES.AML < prev    next >
Text File  |  1995-01-26  |  2KB  |  63 lines

  1.  
  2. // ───────────────────────────────────────────────────────────────────
  3. // The Aurora Editor v2.0
  4. // Copyright 1993-1995 nuText Systems. All Rights Reserved Worldwide.
  5. //
  6. // Display keycodes
  7. //
  8. // This macro displays various keycodes for each key pressed
  9. // ───────────────────────────────────────────────────────────────────
  10.  
  11.  
  12.   include bootpath "define.aml"
  13.  
  14.   var keycode
  15.  
  16.   // create main window with titles
  17.   createwindow
  18.   setwinobj
  19.   setframe ">b"
  20.   setcolor  border_color   color white on gray
  21.   setcolor  text_color     color black on gray
  22.   settitle "Display Keycodes - press <esc> twice to exit"
  23.   setwinctrl '≡'
  24.   sizewindow 6 5 72 20 "ad"
  25.   setborder "1i"
  26.   setshadow 2 1
  27.   setcolor  text_color     color brightgreen on gray
  28.   writeline " Keycode  Hexcode  Scancode  Ascii  Hex  Char  Keyname"
  29.  
  30.   // create scrollable subwindow
  31.   createwindow
  32.   sizewindow 0 1 0 0 "rw1" '' (getprevwin)
  33.   setcolor  text_color     color black on gray
  34.   showcursor 80 90
  35.  
  36.   repeat
  37.  
  38.     lastcode = keycode                // save last keycode
  39.     keycode = getkey 's'              // get next key with scancode
  40.     asciicode = keycode & 0ffh        // get ascii code from keycode
  41.     keyname = getkeyname keycode      // get keyname from keycode
  42.     if lastcode then
  43.       writeline
  44.     end
  45.  
  46.     writestr
  47.       (pad keycode 8) +               // display keycode
  48.       (pad (base keycode 16) 9) +     // display hexcode
  49.       (pad (keycode shr 8) 10) +      // display scancode
  50.       (pad asciicode 7) +             // display asciicode (if any)
  51.       (pad (base asciicode 16) 5) +   // display asciicode (if any)
  52.       (pad (char asciicode) 6) +      // display key char (if any)
  53.       "  " + keyname                  // display keyname
  54.  
  55.   // exit if <esc> pressed twice or mouse button pressed
  56.   until keycode == <esc> and lastcode == keycode or
  57.         keycode == <button>
  58.  
  59.   // destroy subwindow and main window
  60.   destroywindow
  61.   destroywindow
  62.  
  63.